Integrating and searching electronic communications received from a plurality of different communication platforms

ABSTRACT

Embodiments described herein provide approaches for integrating and searching electronic communications received from a plurality of different communication platforms. Specifically, a consolidated communication/messaging platform integrates and consolidates bi-directional communications/messages from individuals, groups, or other entities from various channels (e.g., text messaging, instant messaging, social networking platforms, e-mail, and the like), and enables end users to search and locate content or substance of a specific communication via a user interface and locally stored repository.

RELATED U.S. APPLICATION DATA

The present patent document is a continuation of U.S. patent applicationSer. No. 14/150,069, filed Jan. 8, 2014, entitled “INTEGRATING ANDSEARCHING ELECTRONIC COMMUNICATIONS RECEIVED FROM A PLURALITY OFDIFFERENT COMMUNICATION PLATFORMS”, the disclosure of which isincorporated herein by reference.

BACKGROUND

1. Field of the Invention

This invention relates generally to electronic communication managementand, more specifically, to integrating and searching electroniccommunications received from multiple communication platforms.

2. Description of the Related Art

Over the past several decades, numerous communications technologies havebecome commonplace. This includes the Internet, which providespersonalized web sites, weblogs, and the like, to electronic mail(e-mail), which has migrated from conventional Internet clients such aspersonal computers, over to cellular phones, personal digitalassistants, and dedicated wireless electronic mail clients. Othertechnologies such as facsimiles, voice mail, Short Messaging Service(“SMS”) and the like are also commonplace. In general, each new mediumprovides a separate communication channel with its own underlyingtechnology.

Two persons connected socially and/or professionally may communicatewith each other via different mechanisms such as text messages via smartphone, instant messages, e-mail and in-mail, i.e., messaging embeddedwithin social and professional network platforms. Since thiscommunication happens via multiple channels, it makes it difficult foran end user or some other entity to look back at two-party orthree-party communications historically for search, analytics, etc.

SUMMARY

In general, embodiments described herein provide approaches forintegrating and searching electronic communications received from aplurality of different communication platforms. Specifically, aconsolidated communication and messaging platform integrates andconsolidates communications/messages from individuals, groups, or otherentities from various channels (e.g., text messaging, instant messaging,social networking platforms, e-mail, and the like), and enables endusers to search and locate content or substance of a specificcommunication via a user interface and locally stored repository.

One aspect of the present invention includes a method comprisingcomputer-implemented steps of: receiving electronic communications fromeach of a plurality of different communication platforms; converting theelectronic communications from each of the plurality of differentcommunication platforms from a first format used with the plurality ofdifferent communication platforms to a second format for use with aselected communication platform; compiling the electronic communicationsaccording to an identity of a sender; storing the electroniccommunications on a client system of an end user, the client systemhaving access to a directory of information about a set of senders; andenabling a search of the electronic communications.

Another aspect of the present invention provides a computer system forintegrating and searching electronic communications received from aplurality of different communication platforms, the computer systemcomprising: a memory medium comprising program instructions; a buscoupled to the memory medium; and a processor, for executing the programinstructions, coupled to an integration platform via the bus that whenexecuting the program instructions causes the system to: receiveelectronic communications from each of a plurality of differentcommunication platforms; convert the electronic communications from eachof the plurality of different communication platforms from a firstformat used with the plurality of different communication platforms to asecond format for use with a selected communication platform; compilethe electronic communications according to an identity of a sender;store the electronic communications on a client system of an end user,the client system having access to a directory of information about aset of senders; and enable a search of the electronic communications.

Another aspect of the present invention provides a computer programproduct for integrating and searching electronic communications receivedfrom a plurality of different communication platforms, the computerprogram product comprising a computer readable storage device, andprogram instructions stored on the computer readable storage device, to:receive electronic communications from each of a plurality of differentcommunication platforms; convert the electronic communications from eachof the plurality of different communication platforms from a firstformat used with the plurality of different communication platforms to asecond format for use with a selected communication platform; compilethe electronic communications according to an identity of a sender;store the electronic communications on a client system of an end user,the client system having access to a directory of information about aset of senders; and enable a search of the electronic communications.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

These and other features of this invention will be more readilyunderstood from the following detailed description of the variousaspects of the invention taken in conjunction with the accompanyingdrawings in which:

FIG. 1 shows a pictorial representation of an implementation of theinvention according to illustrative embodiments;

FIG. 2 shows an architecture in which communication integration andsearching is implemented according to illustrative embodiments; and

FIG. 3 shows a process flow for integrating and searching a plurality ofelectronic communications received from multiple communicationplatforms.

The drawings are not necessarily to scale. The drawings are merelyrepresentations, not intended to portray specific parameters of theinvention. The drawings are intended to depict only typical embodimentsof the invention, and therefore should not be considered as limiting inscope. In the drawings, like numbering represents like elements.

DETAILED DESCRIPTION

Exemplary embodiments will now be described more fully herein withreference to the accompanying drawings, in which exemplary embodimentsare shown. It will be appreciated that this disclosure may be embodiedin many different forms and should not be construed as limited to theexemplary embodiments set forth herein. Rather, these exemplaryembodiments are provided so that this disclosure will be thorough andcomplete and will fully convey the scope of this disclosure to thoseskilled in the art.

Furthermore, the terminology used herein is for the purpose ofdescribing particular embodiments only and is not intended to belimiting of this disclosure. As used herein, the singular forms “a”,“an”, and “the” are intended to include the plural forms as well, unlessthe context clearly indicates otherwise. Furthermore, the use of theterms “a”, “an”, etc., do not denote a limitation of quantity, butrather denote the presence of at least one of the referenced items. Itwill be further understood that the terms “comprises” and/or“comprising”, or “includes” and/or “including”, when used in thisspecification, specify the presence of stated features, regions,integers, steps, operations, elements, and/or components, but do notpreclude the presence or addition of one or more other features,regions, integers, steps, operations, elements, components, and/orgroups thereof.

Unless specifically stated otherwise, it may be appreciated that termssuch as “processing,” “computing,” “determining,” “evaluating,” or thelike, refer to the action and/or processes of a computer or computingsystem, or similar electronic data center device, that manipulatesand/or transforms data represented as physical quantities (e.g.,electronic) within the computing system's registers and/or memories intoother data similarly represented as physical quantities within thecomputing system's memories, registers, or other such informationstorage, transmission or viewing devices. The embodiments are notlimited in this context.

As stated above, embodiments described herein provide approaches forintegrating and searching electronic communications received frommultiple, different communication platforms. Specifically, aconsolidated communication/messaging platform integrates andconsolidates bi-directional communications/messages from individuals,groups, or other entities from various channels (e.g., text messaging,instant messaging, social networking platforms, and e-mail), and enablesend users to search and locate content or substance of a specificcommunication via a user interface and locally stored repository.

Referring now to FIG. 1, a computerized implementation 100 of anexemplary embodiment will be shown and described. As depicted,implementation 100 includes computer system 104 deployed within acomputer infrastructure 102 (e.g., a client device). This is intended todemonstrate, among other things, that the present invention could beimplemented within a network environment (e.g., the Internet, a widearea network (WAN), a local area network (LAN), a virtual privatenetwork (VPN), etc.), a cloud-computing environment, or on a stand-alonecomputer system. Communication throughout the network can occur via anycombination of various types of communication links. For example, thecommunication links can comprise addressable connections that mayutilize any combination of wired and/or wireless transmission methods.Where communications occur via the Internet, connectivity could beprovided by conventional TCP/IP sockets-based protocol, and an Internetservice provider could be used to establish connectivity to theInternet. Still yet, computer infrastructure 102 is intended todemonstrate that some or all of the components of implementation 100could be deployed, managed, serviced, etc., by a service provider whooffers to implement, deploy, and/or perform the functions of the presentinvention for others.

Computer system 104 is intended to represent any type of computer systemthat may be implemented in deploying/realizing the teachings recitedherein. In this particular example, computer system 104 represents anillustrative system for integrating and searching a plurality ofelectronic communications received from multiple communicationplatforms. It should be understood that any other computers implementedunder the present invention may have different components/software, butwill perform similar functions. As shown, computer system 104 includes aprocessing unit 106 capable of communicating with an integrationplatform 118 stored in memory 108, a bus 110, and device interfaces 112.

Processing unit 106 refers, generally, to any apparatus that performslogic operations, computational tasks, control functions, etc. Aprocessor may include one or more subsystems, components, and/or otherprocessors. A processor will typically include various logic componentsthat operate using a clock signal to latch data, advance logic states,synchronize computations and logic operations, and/or provide othertiming functions. During operation, processing unit 106 collects androutes signals representing inputs and outputs between external devices115 and integration platform 118. The signals can be transmitted over aLAN and/or a WAN (e.g., T1, T3, 56 kb, X.25), broadband connections(ISDN, Frame Relay, ATM), wireless links (802.11, Bluetooth, etc.), andso on. In some embodiments, the signals may be encrypted using, forexample, trusted key-pair encryption. Different systems may transmitinformation using different communication pathways, such as Ethernet orwireless networks, direct serial or parallel connections, USB,Firewire®, Bluetooth®, or other proprietary interfaces. (Firewire is aregistered trademark of Apple Computer, Inc. Bluetooth is a registeredtrademark of Bluetooth Special Interest Group (SIG)).

In general, processing unit 106 executes computer program code, such asprogram code for operating integration platform 118, which is stored inmemory 108 and/or storage system 116. While executing computer programcode, processing unit 106 can read and/or write data to/from memory 108,storage system 116, and integration platform 118. Storage system 116 caninclude VCRs, DVRs, RAID arrays, USB hard drives, optical diskrecorders, flash storage devices, and/or any other data processing andstorage elements for storing and/or processing data.

Referring now to FIG. 2, the structure and operation of a system 200 forintegrating and enabling searching of electronic communications receivedfrom multiple communication platforms according to exemplary embodimentswill be described in greater detail. As illustrated, system 200 isconfigured to receive a plurality of communications (e.g., one-to-one,bi-directional messages) from a sender 220 via multiple communicationplatforms, e.g., communication modalities such as e-mail applications,SMS applications, social network applications, instant-messagingapplications, peer-to-peer applications, etc., which include allnecessary components and functionality for receiving input(s) fromsender 220. In FIG. 2, the communication platforms are represented bysocial network application 222 and messaging applications A-1, A-2, A-3,B-1, B-2, and B-3. These applications generate and transmit textmessages, instant messages, e-mails, social networking messages, and/ore-mails, and the like. It will be appreciated that any number ofmessaging service providers (e.g., Messaging Service Providers A and B)may provide/manage the various messaging applications. Furthermore, themessaging applications may include one or more cloud computingapplications (e.g., Messaging Cloud Applications A-3 and B-2). As isknown, cloud-based applications operate in a networked/cloud-computingenvironment and may provide computation resources enhanced by one ormore additional abstraction layers (e.g., a cloud layer), thus makingdisparate devices appear to an end-consumer as a single pool of seamlessresources.

System 200 further comprises an analytics engine 224, which operateswith, or is a subcomponent of, integration platform 218. Analyticsengine 224 is configured to receive data (e.g., message browsing data,identity data, spam data, message metadata) corresponding to each of theelectronic communications, and compile the electronic communications,e.g., based on an identity of sender 220 as determined with data from anidentity management device 228. In one embodiment, analytics engine 224receives input signals from the various messaging applications, whereinthe input signals may be converted into commands. The input signals mayencode data in any format suitable for interpretation by analyticsengine 224 including text, audio (such as voice audio, dual-tonemulti-frequency audio, and so forth), a barcode scan, an image, a video,a selection, a data feed item, a sensor measurement, a clock tick, analarm, a client context description, sender and receiving information,user privilege information, textual information (e.g., e-mail or SMSmessage), tabular information (e.g., cell phone UI table or web form),non-textual input, and/or the like. The commands may becomputer-interpretable commands, e.g., in a command language definition(CLD) format or other command language format. The input signals mayalready be in a command format where, for example, a client device cangenerate corresponding output. Each input signal may include or beassociated with a well-formed instruction, a malformed instruction, alonghand instruction, a shorthand instruction, an alternate instruction,or the like. In one embodiment, each input is encoded/decoded into abinary representation to a format suitable for presentation to an enduser 230 via a user interface.

Analytics engine 224 further provides the necessary functionalcomponents for handling data integration from each of the plurality ofmessaging applications, e.g., by conversion of data from a first formatsuitable for use with the first messaging application to a second formatsuitable for use with the second message application, or by conversionof data from the first format to a format common to multiple messagingapplications. Furthermore, analytics engine 224 may comprise a parser(not specifically shown) for conducting syntax analysis and semanticparsing on expressions within the electronic communications. Theexpression may be a logical expression, a textual expression, a binaryexpression, a hexadecimal expression, an octal expression, or any andall other kinds and/or encodings of expression. The syntax analysis mayutilize context-free grammar and may attempt to match an expression tothe grammar, wherein an input signal may include the expression. Thecontext-free grammar may be relaxed so as to accept some invalidgrammatical constructs. The semantic parsing may be directed at workingout an intent or implication of an expression that has been accepted bythe syntax analysis.

As further shown, system 200 includes identity management device 228,which can compile a collection of user and/or business information in asearchable directory. The information for identity management device 228may come from electronic presences, e-mail, text messages, hard copy, orthe like. Identity management device 228 may be a private directory, apublic directory, or any other type of directory. The collection ofusers may be from a group (e.g. professional), association, society, orthe like. The directory may include personal information, association toa business, association to another member of the association,association membership information (e.g. office held), or the like. Thedirectory information for each user may include keywords, tags, or thelike that may permit aggregation of user information.

Identity management device 228 may have an aggregation capability. Theaggregation may be performed on any of the fields within the directorysuch as name, location, business, association, electronic communicationtype, communication dates, platform types, and the like. The aggregationof information may return related users and businesses as part of theaggregation. The aggregation may also be performed using the tags thatmay be associated with a particular user.

As shown in FIG. 2, analytics engine 224 may communicate with socialnetwork application 222 (e.g., Twitter®, Facebook®, LinkedIn®, etc.),which contains a social network platform user interface 232 fordisplaying integrated messages to end user 230. (Twitter is a registeredtrademark of Twitter, Inc., having an address at 1355 Market Street,Suite 900 San Francisco, Calif. 94103, Facebook is a registeredtrademark of Facebook, Inc., having an address at 1601 Willow Road MenloPark, Calif. 94025, and LinkedIn is a registered trademark of LinkedInCorporation, having an address at Stierlin Court Mountain View, Calif.94043.) In this embodiment, the integrated messages are compiled,converted (if necessary), and displayed within the existing userinterface 232 of social network application 222. That is, all messagesfrom each system/platform are integrated into a user-selectedcommunication platform (e.g., Facebook®) from the plurality of differentcommunication platforms available or previously used. In anotherembodiment, end user 230 may view and search communications via a customuser interface 236, e.g., in an application that is specificallydesigned for displaying communications of different formats thatoriginate from different messaging platforms. In this embodiment,analytics engine 224 can communicate with custom user interface 236,which can contain a custom user interface platform 238 for integratingand enabling a search of the electronic communications.

During operation, analytics engine 224 and integration platform 218store each of the electronic communications on a client system for enduser 230 in a local repository, e.g., storage system 116 shown in FIG.1, to enable a later search of the plurality of communications. Eachcommunication is stored together with message browsing data, identitydata, spam data, message metadata, etc., which enables a query by enduser 230 via the user interface, e.g., based on a keyword, the identityof sender 220, and a date/time range. The query may be a database query,such as and without limitation, a structured query language (SQL) query,which may be communicated according to open database connectivity(ODBC).

Consider the non-limiting example in which sender 220 and end user 230are both professionally and socially connected and communicate viadifferent channels, e.g., Facebook e-mail/chat, LinkedIn in-mail, ande-mail, as well as text periodically via their smart phones. End user230 gets a text message about a communication that sender 220transmitted a few months back regarding a conference presentation. Enduser 230, however, is unsure which communication platform was used forthis particular communication. With system 200, end user 230 may log into a user selected interface (e.g., UI 236) to view all electronicexchanges (e.g., e-mail, text, chat, etc.) with sender 220 for a givenperiod of time, and/or for the given subject matter (i.e., theconference presentation). End user 230 is able to efficiently locate theoriginal message from sender 220 and respond accordingly.

In another embodiment, the method that performs communicationintegration and searching can be provided on a subscription,advertising, and/or fee basis. That is, a service provider could offerto provide the storage of the electronic communications on the clientsystem and the searching of the plurality of communications. In thiscase, each communication platform associated with each user is firstregistered with the service provider, which can then create, maintain,support, etc., a computer infrastructure, such as system 200 (FIG. 2)that performs the processes of the invention for one or more consumers.In return, the service provider can receive payment from the consumer(s)under a subscription and/or fee agreement. According to this embodiment,the following non-limiting steps may be carried out:

-   -   1. End user 230 registers for this service with the provider and        provides, or allows recognition of, all e-mail, text, and/or        social networking messaging platforms used;    -   2. end user 230 subscribes to this service by paying a monthly        subscription fee;    -   3. end user 230 receives a customized user interface/log-in        page, which can be modified as desired by end user 230;    -   4. when desired, end user 230 is able to log-in and see streams        of messages that are coming to the different messaging platforms        that he/she uses; and    -   5. end user 230 is able to search by keyword, name, date, etc.,        to find all desired messages.

It can be appreciated that the approaches disclosed herein can be usedwithin a computer system to integrate and allow searching of a pluralityof electronic communications received from multiple communicationplatforms. In this case, as shown in FIGS. 1-2, the integration platformcan be provided, and one or more systems for performing the processesdescribed in the invention can be obtained and deployed to computerinfrastructure 102 (FIG. 1). To this extent, the deployment can compriseone or more of (1) installing program code on a computing device, suchas a computer system, from a computer-readable storage medium; (2)adding one or more computing devices to the infrastructure; and (3)incorporating and/or modifying one or more existing systems of theinfrastructure to enable the infrastructure to perform the processactions of the invention.

The exemplary computer system 104 (FIG. 1) may be described in thegeneral context of computer-executable instructions, such as programmodules, being executed by a computer. Generally, program modulesinclude routines, programs, people, components, logic, data structures,and so on, which perform particular tasks or implement particularabstract data types. Exemplary computer system 104 may be practiced indistributed computing environments where tasks are performed by remoteprocessing devices that are linked through a communications network. Ina distributed computing environment, program modules may be located inboth local and remote computer storage media including memory storagedevices.

As depicted in FIG. 3, a system (e.g., computer system 104) carries outthe methodologies disclosed herein. Shown is a process flow 300 forintegrating and searching electronic communications received from aplurality of different communication platforms. At 302, eachcommunication platform associated with an end user is registered. At304, electronic communications from a plurality of differentcommunication platforms are received. At 306, the electroniccommunications are compiled according to an identity of a sender. At308, the electronic communications are stored on a client system. At310, a search of the electronic communications based on a keyword or theidentity of the sender is enabled.

Process flow 300 of FIG. 3 illustrates the architecture, functionality,and operation of possible implementations of systems, methods, andcomputer program products according to various embodiments of thepresent invention. In this regard, each block in the flowchart mayrepresent a module, segment, or portion of code, which comprises one ormore executable instructions for implementing the specified logicalfunction(s). It should also be noted that, in some alternativeimplementations, the functions noted in the blocks might occur out ofthe order depicted in the figures. For example, two blocks shown insuccession may, in fact, be executed substantially concurrently. It willalso be noted that each block of flowchart illustration can beimplemented by special purpose hardware-based systems that perform thespecified functions or acts, or combinations of special purpose hardwareand computer instructions.

Some of the functional components described in this specification havebeen labeled as systems or units in order to more particularly emphasizetheir implementation independence. For example, a system or unit may beimplemented as a hardware circuit comprising custom VLSI circuits orgate arrays, off-the-shelf semiconductors such as logic chips,transistors, or other discrete components. A system or unit may also beimplemented in programmable hardware devices such as field programmablegate arrays, programmable array logic, programmable logic devices or thelike. A system or unit may also be implemented in software for executionby various types of processors. A system or unit or component ofexecutable code may, for instance, comprise one or more physical orlogical blocks of computer instructions, which may, for instance, beorganized as an object, procedure, or function. Nevertheless, theexecutables of an identified system or unit need not be physicallylocated together, but may comprise disparate instructions stored indifferent locations which, when joined logically together, comprise thesystem or unit and achieve the stated purpose for the system or unit.

Further, a system or unit of executable code could be a singleinstruction, or many instructions, and may even be distributed overseveral different code segments, among different programs, and acrossseveral memory devices. Similarly, operational data may be identifiedand illustrated herein within modules, and may be embodied in anysuitable form and organized within any suitable type of data structure.The operational data may be collected as a single data set, or may bedistributed over different locations including over different storagedevices and disparate memory devices.

Furthermore, as will be described herein, systems/units may also beimplemented as a combination of software and one or more hardwaredevices. For instance, integration platform 118 may be embodied in thecombination of a software executable code stored on a memory medium(e.g., memory storage device). In a further example, a system or unitmay be the combination of a processor that operates on a set ofoperational data.

As noted above, some of the embodiments may be embodied in hardware. Thehardware may be referenced as a hardware element. In general, a hardwareelement may refer to any hardware structures arranged to perform certainoperations. In one embodiment, for example, the hardware elements mayinclude any analog or digital electrical or electronic elementsfabricated on a substrate. The fabrication may be performed usingsilicon-based integrated circuit (IC) techniques, such as complementarymetal oxide semiconductor (CMOS), bipolar, and bipolar CMOS (BiCMOS)techniques, for example. Examples of hardware elements may includeprocessors, microprocessors, circuits, circuit elements (e.g.,transistors, resistors, capacitors, inductors, and so forth), integratedcircuits, application specific integrated circuits (ASIC), programmablelogic devices (PLD), digital signal processors (DSP), field programmablegate array (FPGA), logic gates, registers, semiconductor devices, chips,microchips, chip sets, and so forth. However, the embodiments are notlimited in this context.

Also noted above, some embodiments may be embodied in software. Thesoftware may be referenced as a software element. In general, a softwareelement may refer to any software structures arranged to perform certainoperations. In one embodiment, for example, the software elements mayinclude program instructions and/or data adapted for execution by ahardware element, such as a processor. Program instructions may includean organized list of commands comprising words, values, or symbolsarranged in a predetermined syntax that, when executed, may cause aprocessor to perform a corresponding set of operations.

For example, an implementation of exemplary computer system 104 (FIG. 1)may be stored on or transmitted across some form of computer-readablestorage medium and/or computer-readable storage device.Computer-readable storage medium/device can be media that can beaccessed by a computer. “Computer-readable storage medium/device”includes volatile and non-volatile, removable and non-removable computerstorable media implemented in any method or technology for storage ofinformation such as computer readable instructions, data structures,program modules, or other data. Computer storage device includes, but isnot limited to, RAM, ROM, EEPROM, flash memory or other memorytechnology, CD-ROM, digital versatile disks (DVD) or other opticalstorage, magnetic cassettes, magnetic tape, magnetic disk storage orother magnetic storage devices, or any other medium which can be used tostore the desired information and which can be accessed by a computer.“Communication medium” typically embodies computer readableinstructions, data structures, and program modules. Communication mediaalso includes any information delivery media.

It is apparent that there has been provided approaches for integratingand searching electronic communications received from a plurality ofdifferent communication platforms. While the invention has beenparticularly shown and described in conjunction with exemplaryembodiments, it will be appreciated that variations and modificationswill occur to those skilled in the art. Therefore, it is to beunderstood that the appended claims are intended to cover all suchmodifications and changes that fall within the true spirit of theinvention.

What is claimed is:
 1. A method comprising computer-implemented stepsof: receiving natural language electronic communications from each of aplurality of different communication platforms; converting the naturallanguage electronic communications from each of the plurality ofdifferent communication platforms from a first format used with theplurality of different communication platforms to a second format foruse with a selected communication platform; compiling the naturallanguage electronic communications according to an identity of a sender;storing the natural language electronic communications on a clientsystem of an end user, the client system having access to a directory ofinformation about a set of senders; presenting the converted naturallanguage electronic communications to the end user in the selectedcommunication platform; and enabling a search of the natural languageelectronic communications.
 2. The method of claim 1, wherein thecompiling the electronic communications comprises integrating aplurality of messages into a selected communication platform from theplurality of different communication platforms.
 3. The method of claim1, wherein the enabling the search of the electronic communicationscomprises: providing a user interface to the end user; and querying theelectronic communications stored on the client system via the userinterface.
 4. The method of claim 3, further comprising receiving theidentity of the sender and a date range into the user interface.
 5. Themethod of claim 3, further comprising providing, on a subscriptionbasis, each of: a storage of the electronic communications on the clientsystem, and the querying of the electronic communications.
 6. The methodof claim 1, further comprising registering each of the plurality ofdifferent communication platforms associated with the end user.
 7. Themethod of claim 1, wherein the storing the electronic communicationscomprises storing data and metadata of each of the electroniccommunications.
 8. A computer system for integrating and searchingelectronic communications received from a plurality of differentcommunication platforms, the computer system comprising: a memory mediumcomprising program instructions; a bus coupled to the memory medium; anda processor, for executing the program instructions, coupled to anintegration platform via the bus that when executing the programinstructions causes the system to: receive natural language electroniccommunications from each of a plurality of different communicationplatforms; convert the natural language electronic communications fromeach of the plurality of different communication platforms from a firstformat used with the plurality of different communication platforms to asecond format for use with a selected communication platform; compilethe natural language electronic communications according to an identityof a sender; store the natural language electronic communications on aclient system of an end user, the client system having access to adirectory of information about a set of senders; present the convertednatural language electronic communications to the end user in theselected communication platform; and enable a search of the naturallanguage electronic communications.
 9. The computer system of claim 8,wherein the program instructions causing the system to compile theelectronic communications further comprise program instructions tointegrate a plurality of messages into a selected communication platformfrom the plurality of different communication platforms.
 10. Thecomputer system of claim 8, wherein the program instructions causing thesystem to enable the search of the electronic communications furthercomprise instructions to: provide a user interface to the end user; andquery the electronic communications stored on the client system via theuser interface.
 11. The computer system of claim 10, wherein the programinstructions further comprise program instructions to receive theidentity of the sender and a date range into the user interface.
 12. Thecomputer system of claim 10, wherein the program instructions furthercomprise program instructions to provide, on a subscription basis, eachof: a storage of the electronic communications on the client system, andthe query of the electronic communications.
 13. The computer system ofclaim 8, wherein the program instructions further comprise programinstructions to register each of the plurality of differentcommunication platforms associated with the end user.
 14. The computersystem of claim 8, wherein the program instructions to store theelectronic communications further comprise program instructions to storedata and metadata of each of the electronic communications.
 15. Acomputer program product for integrating and searching electroniccommunications received from a plurality of different communicationplatforms, the computer program product comprising a computer readablestorage device, and program instructions stored on the computer readablestorage device, to: receive natural language electronic communicationsfrom each of a plurality of different communication platforms; convertthe natural language electronic communications from each of theplurality of different communication platforms from a first format usedwith the plurality of different communication platforms to a secondformat for use with a selected communication platform; compile thenatural language electronic communications according to an identity of asender; store the natural language electronic communications on a clientsystem of an end user, the client system having access to a directory ofinformation about a set of senders; present the converted naturallanguage electronic communications to the end user in the selectedcommunication platform; and enable a search of the natural languageelectronic communications.
 16. The computer program product of claim 15,wherein the program instructions to compile the electroniccommunications further comprise program instructions to integrate aplurality of messages into a selected communication platform from theplurality of different communication platforms.
 17. The computer programproduct of claim 15, wherein the program instructions to enable thesearch of the electronic communications further comprise programinstructions to: provide a user interface to the end user; and query theelectronic communications stored on the client system via the userinterface.
 18. The computer program product of claim 17, furthercomprising program instructions to receive, using the at least onecomputing device, the identity of the sender and a date range into theuser interface.
 19. The computer program product of claim 17, furthercomprising program instructions to provide, on a subscription basis,each of: a storage of the electronic communications on the clientsystem, and the querying of the electronic communications.
 20. Thecomputer program product of claim 15, further comprising programinstructions to register, using the at least one computing device, eachof the plurality of communications platforms associated with the enduser.